<?php

require_once('OP.php');

class Empresa extends ObjetoPersistente {
	public $razon_social;
	public $denominacion;
	public $email;
	public $telefono;
        public $direccion;
	public $fecha_reg;
	public $fecha_mod;
	public $id_usuario;
    
	public function __construct($atributos = array()) {
		parent::__construct($atributos);
		self::$verbose_name = 'Empresa';
		self::$verbose_plural = 'Empresas';
	}


	public static function obtenerRazon($nombre) {
		$g = new Empresa();
		$g = $g->filtrar('razon_social', '"' . $nombre . '"');
		if (empty($g))
			return False;
		return $g[0];
	}

	public static function obtenerEmpresaId($id) {
		$g = new Empresa();
		$g = $g->filtrarPorID($id);
		return $g[0]->razon_social;
	}

        function obtenerEmpresaT(){
            $aux = new Empresa();
            $a = $aux->obtenerTodos();
            if (!empty($a) && $a != False){
                return $a;
            }
            return False;
        }
	public static function obtenerEmpresaporId($id) {
		$g = new Empresa();
		$g = $g->filtrarPorID($id);
		return $g[0];
	}

	public static function obtenerIdEmpresa($nombre) {
		$g = new Empresa();
		$g = $g->filtrar('razon_social', '"' . $razon_social . '"');
		if (empty($g))
			return False;
		return $g[0]->id;
	}

	public static function borrarEmpresa($idE){
		$a=Empresa::obtenerEmpresaporId($idE);
		if($a == False){
			return False;
		}
		$a->borrar();
		return True;
	}

	public static function insertarEmpresa($razon_socialP, $denominacionP, $emailP, $telefonoP, $direccionP, $fecha_regP, $fecha_modP, $id_usuarioP) {
		$aux = new Empresa();
		if ($aux->obtenerRazon($razon_socialP) != False){
			return False;
		}		
                $a = new Empresa(array('razon_social' => $razon_socialP, 'denominacion' => $denominacionP, 'email' => $emailP, 'telefono' => $telefonoP, 'direccion' => $direccionP, 'fecha_reg' => $fecha_regP, 'fecha_mod' => $fecha_modP, 'id_usuario' => $id_usuarioP));
		$a->guardar();
		return True;
	}
    
    	public static function modificarEmpresa($idP, $razon_socialP, $denominacionP, $emailP, $telefonoP, $direccionP, $fecha_regP, $fecha_modP, $id_usuarioP) {
		$aux = new Empresa();
                $em = Empresa::obtenerEmpresaporId($idP);
                if ($aux->obtenerRazon($razon_socialP) != False && $em->razon_social != $razon_socialP){
			return False;
		}
                $a = new Empresa(array('id' => $idP, 'razon_social' => $razon_socialP, 'denominacion' => $denominacionP, 'email' => $emailP, 'telefono' => $telefonoP, 'direccion' => $direccionP, 'fecha_reg' => $fecha_regP, 'fecha_mod' => $fecha_modP, 'id_usuario' => $id_usuarioP));
		$a->guardar();
		return True;
	}


}
?>
